home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_gtk+.idb / usr / freeware / include / gtk / gtkprogress.h.z / gtkprogress.h
Encoding:
C/C++ Source or Header  |  1999-07-16  |  3.7 KB  |  111 lines

  1. /* GTK - The GIMP Toolkit
  2.  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
  3.  *
  4.  * This library is free software; you can redistribute it and/or
  5.  * modify it under the terms of the GNU Library General Public
  6.  * License as published by the Free Software Foundation; either
  7.  * version 2 of the License, or (at your option) any later version.
  8.  *
  9.  * This library is distributed in the hope that it will be useful,
  10.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  12.  * Library General Public License for more details.
  13.  *
  14.  * You should have received a copy of the GNU Library General Public
  15.  * License along with this library; if not, write to the
  16.  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  17.  * Boston, MA 02111-1307, USA.
  18.  */
  19.  
  20. /*
  21.  * Modified by the GTK+ Team and others 1997-1999.  See the AUTHORS
  22.  * file for a list of people on the GTK+ Team.  See the ChangeLog
  23.  * files for a list of changes.  These files are distributed with
  24.  * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 
  25.  */
  26.  
  27. #ifndef __GTK_PROGRESS_H__
  28. #define __GTK_PROGRESS_H__
  29.  
  30.  
  31. #include <gdk/gdk.h>
  32. #include <gtk/gtkwidget.h>
  33. #include <gtk/gtkadjustment.h>
  34.  
  35.  
  36. #ifdef __cplusplus
  37. extern "C" {
  38. #endif /* __cplusplus */
  39.  
  40.  
  41. #define GTK_TYPE_PROGRESS            (gtk_progress_get_type ())
  42. #define GTK_PROGRESS(obj)            (GTK_CHECK_CAST ((obj), GTK_TYPE_PROGRESS, GtkProgress))
  43. #define GTK_PROGRESS_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_PROGRESS, GtkProgressClass))
  44. #define GTK_IS_PROGRESS(obj)         (GTK_CHECK_TYPE ((obj), GTK_TYPE_PROGRESS))
  45. #define GTK_IS_PROGRESS_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_PROGRESS))
  46.  
  47.  
  48. typedef struct _GtkProgress       GtkProgress;
  49. typedef struct _GtkProgressClass  GtkProgressClass;
  50.  
  51.  
  52. struct _GtkProgress
  53. {
  54.   GtkWidget widget;
  55.  
  56.   GtkAdjustment *adjustment;
  57.   GdkPixmap     *offscreen_pixmap;
  58.   gchar         *format;
  59.   gfloat         x_align;
  60.   gfloat         y_align;
  61.  
  62.   guint          show_text : 1;
  63.   guint          activity_mode : 1;
  64. };
  65.  
  66. struct _GtkProgressClass
  67. {
  68.   GtkWidgetClass parent_class;
  69.  
  70.   void (* paint)            (GtkProgress *progress);
  71.   void (* update)           (GtkProgress *progress);
  72.   void (* act_mode_enter)   (GtkProgress *progress);
  73. };
  74.  
  75.  
  76. GtkType    gtk_progress_get_type            (void);
  77. void       gtk_progress_set_show_text       (GtkProgress   *progress,
  78.                          gint           show_text);
  79. void       gtk_progress_set_text_alignment  (GtkProgress   *progress,
  80.                          gfloat         x_align,
  81.                          gfloat         y_align);
  82. void       gtk_progress_set_format_string   (GtkProgress   *progress,
  83.                          gchar         *format);
  84. void       gtk_progress_set_adjustment      (GtkProgress   *progress,
  85.                          GtkAdjustment *adjustment);
  86. void       gtk_progress_configure           (GtkProgress   *progress,
  87.                          gfloat         value,
  88.                          gfloat         min,
  89.                          gfloat         max);
  90. void       gtk_progress_set_percentage      (GtkProgress   *progress,
  91.                          gfloat         percentage);
  92. void       gtk_progress_set_value           (GtkProgress   *progress,
  93.                          gfloat         value);
  94. gfloat     gtk_progress_get_value           (GtkProgress   *progress);
  95. void       gtk_progress_set_activity_mode   (GtkProgress   *progress,
  96.                          guint          activity_mode);
  97. gchar*     gtk_progress_get_current_text    (GtkProgress   *progress);
  98. gchar*     gtk_progress_get_text_from_value (GtkProgress   *progress,
  99.                          gfloat         value);
  100. gfloat     gtk_progress_get_current_percentage (GtkProgress *progress);
  101. gfloat     gtk_progress_get_percentage_from_value (GtkProgress *progress,
  102.                            gfloat       value);
  103.  
  104.  
  105. #ifdef __cplusplus
  106. }
  107. #endif /* __cplusplus */
  108.  
  109.  
  110. #endif /* __GTK_PROGRESS_H__ */
  111.